package com.jctrip.hotel.source.model.hworld.req;

import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;

import java.util.List;

/**
 * @Author：Haruhi
 * @description:
 * @Date：2023/12/28 14:57
 * @Package：com.jctrip.hotel.source.model.hworld.req
 * @Project：hotel-main
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class HworldAddUserReq extends BaseReq{
    @JsonProperty(value = "userNumber",required = true)
    private String userNumber;
    @JsonProperty(value = "userName",required = true)
    private String userName;
    @JsonProperty(value = "mobile",required = true)
    private String mobile;
    @JsonProperty("userDep")
    private String userDep;
    @JsonProperty("costCenter")
    private String costCenter;
    @JsonProperty("rank")
    private String rank;
    @JsonProperty("leader")
    private String leader;
    @JsonProperty("email")
    private String email;
    /**
     * C01	居民身份证（内宾）
     * C02	户口簿（内宾）
     * C03	军官证（内宾）
     * C04	警官证（内宾）
     * C05	士兵证（内宾）
     * C06	护照
     * C54	中华人民共和国旅行证
     * C55	台湾居民来往大陆通行证
     * C59	中华人民共和国入出境通行证
     * C62	港澳居民来往内地通行证
     * C65	驾驶证
     */
    @JsonProperty("certificateType")
    private String certificateType;
    @JsonProperty("certificateNumber")
    private String certificateNumber;

    @JsonProperty("permissions")
    private List<PermissionsBean> permissions;

    @Data
    public static class PermissionsBean {
        /**
         * 默认传值true
         */
        @JsonProperty("hasPermission")
        private boolean hasPermission;
        /**
         * 预定权限:Emp_Reserve_Authority
         */
        @JsonProperty("permissionCode")
        private String permissionCode;
        /**
         * 不同预定权限对应vlalue:
         * Emp_Reserve_Authority_Just:只能为自己预定
         * Emp_Reserve_Authority_Company：为全部员工预定
         * Emp_Reserve_Authority_All：可以为全部员工和非员工预定
         */
        @JsonProperty("permissionValue")
        private String permissionValue;

    }
}
